# -*- coding:utf-8 -*-


class RandEnv:
    def __init__(self, seed, rand_max):
        self.next = seed
        self.rand_max = rand_max

def rand(rand_env):
    rand_env.next = (rand_env.next * 0x41C64E6D + 0x00003039) & 0xFFFFFFFF
    return ((rand_env.next // 0x00010000) & 0xFFFF) % (rand_env.rand_max + 0x0001)

def srand(rand_env, seed, rand_max):
    rand_env.next = seed
    rand_env.rand_max = rand_max


def password(_id_num):
    _1701 = 0
    for ch in _id_num:
        _1701 += ord(ch)
    print(_1701)
    _16F0 = _1701 % 0x000003E8 // 0x00000064
    _16EF = _1701 % 0x00000064 // 0x0000000A
    _16EE = _1701 % 0x0000000A
    _16FD = (_1701 * _1701)&0xFFFFFFFF
    _16F6 = _16FD % 0x000003E8 // 0x00000064
    _16F5 = _16FD % 0x00000064 // 0x0000000A
    _16F4 = _16FD % 0x0000000A
    _16F9 = (_1701 * _1701 * _1701)&0xFFFFFFFF
    _16F3 = _16F9 % 0x000003E8 // 0x00000064
    _16F2 = _16F9 % 0x00000064 // 0x0000000A
    _16F1 = _16F9 % 0x0000000A
    _16F3 = (_16F3 + _16F0) % 0x0A
    _16F2 = (_16F2 + _16EF) % 0x0A
    _16F1 = (_16F1 + _16EE) % 0x0A
    _16EA = int(_id_num[0x09]) * 0x64 + int(_id_num[0x0A]) * 0x0A + int(_id_num[0x0B])
    _16EA = (_16EA * _16EA)&0xFFFFFFFF
    _16E5 = _16EA // 0x000186A0
    _16E4 = _16EA // 0x00002710 % 0x0000000A
    _16E3 = _16EA // 0x000003E8 % 0x0000000A
    _16E2 = _16EA // 0x00000064 % 0x0000000A
    _16E1 = _16EA // 0x0000000A % 0x0000000A
    _16E0 = _16EA % 0x0000000A
    _16E6 = int(_id_num[0x06]) * 0x64 + int(_id_num[0x07]) * 0x0A + int(_id_num[0x08])
    _16E6 = (_16E6 * _16E6)&0xFFFFFFFF
    _16DF = _16E6 // 0x000186A0
    _16DE = _16E6 // 0x00002710 % 0x0000000A
    _16DD = _16E6 // 0x000003E8 % 0x0000000A
    _16DC = _16E6 // 0x00000064 % 0x0000000A
    _16DB = _16E6 // 0x0000000A % 0x0000000A
    _16DA = _16E6 % 0x0000000A
    _16D9 = int(_id_num[0x06])
    _16D8 = int(_id_num[0x07])
    _16D7 = int(_id_num[0x08])
    _16D6 = int(_id_num[0x09])
    _16D5 = int(_id_num[0x0A])
    _16D4 = int(_id_num[0x0B])
    _16D3 = (_16E5 + _16DF + _16D9) % 0x0A
    _16D2 = (_16E4 + _16DE + _16D8) % 0x0A
    _16D1 = (_16E3 + _16DD + _16D7) % 0x0A
    _16D0 = (_16E2 + _16DC + _16D6) % 0x0A
    _16CF = (_16E1 + _16DB + _16D5) % 0x0A
    _16CE = (_16E0 + _16DA + _16D4) % 0x0A
    _1709 = str((_16F6 + _16D3) % 0x0A)\
            +str((_16F3 + _16D2) % 0x0A)\
            +str((_16F5 + _16D1) % 0x0A)\
            +str((_16F2 + _16D0) % 0x0A)\
            +str((_16F4 + _16CF) % 0x0A)\
            +str((_16F1 + _16CE) % 0x0A)
    return _1709


if __name__ == '__main__':
    for second in range(60):
        id_num = ''
        ev = RandEnv(second, 200)
        for i in range(12):
            id_num += str(rand(ev)%10)
        print(f'{second:02} IDNum:{id_num} password:{password(id_num)}')